
package xcmg.device.service.wechat.xgwjwcf.function;

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
import xcmg.device.service.wechat.xgwjwcf.datacontract.AccessTokenModel;
import xcmg.device.service.wechat.xgwjwcf.datacontract.UserModel;
import xcmg.device.service.wechat.xgwjwcf.datacontract.UserProfileModel;

/**
 * This class was generated by the JAX-WS RI.
 * JAX-WS RI 2.2.9-b130926.1035
 * Generated source version: 2.2
 * 
 */
@WebService(name = "IWeChatService", targetNamespace = "http://tempuri.org/")
@XmlSeeAlso({
    xcmg.device.service.wechat.xgwjwcf.serialization.ObjectFactory.class,
    xcmg.device.service.wechat.xgwjwcf.datacontract.ObjectFactory.class,
    xcmg.device.service.wechat.xgwjwcf.function.ObjectFactory.class
})
public interface IWeChatService {


    /**
     * 
     * @param sign
     * @param timestamp
     * @return
     *     returns org.datacontract.schemas._2004._07.xgwj_model.AccessTokenModel
     */
    @WebMethod(operationName = "GetAccessToken", action = "http://tempuri.org/IWeChatService/GetAccessToken")
    @WebResult(name = "GetAccessTokenResult", targetNamespace = "http://tempuri.org/")
    @RequestWrapper(localName = "GetAccessToken", targetNamespace = "http://tempuri.org/", className = "org.tempuri.GetAccessToken")
    @ResponseWrapper(localName = "GetAccessTokenResponse", targetNamespace = "http://tempuri.org/", className = "org.tempuri.GetAccessTokenResponse")
    public AccessTokenModel getAccessToken(
        @WebParam(name = "timestamp", targetNamespace = "http://tempuri.org/")
            String timestamp,
        @WebParam(name = "sign", targetNamespace = "http://tempuri.org/")
            String sign);

    /**
     * 
     * @param openid
     * @param sign
     * @param timestamp
     * @return
     *     returns org.datacontract.schemas._2004._07.xgwj_model.UserModel
     */
    @WebMethod(operationName = "GetUserInfo", action = "http://tempuri.org/IWeChatService/GetUserInfo")
    @WebResult(name = "GetUserInfoResult", targetNamespace = "http://tempuri.org/")
    @RequestWrapper(localName = "GetUserInfo", targetNamespace = "http://tempuri.org/", className = "org.tempuri.GetUserInfo")
    @ResponseWrapper(localName = "GetUserInfoResponse", targetNamespace = "http://tempuri.org/", className = "org.tempuri.GetUserInfoResponse")
    public UserModel getUserInfo(
        @WebParam(name = "timestamp", targetNamespace = "http://tempuri.org/")
            String timestamp,
        @WebParam(name = "openid", targetNamespace = "http://tempuri.org/")
            String openid,
        @WebParam(name = "sign", targetNamespace = "http://tempuri.org/")
            String sign);

    /**
     * 
     * @param sign
     * @param endtime
     * @param begintime
     * @param timestamp
     * @return
     *     returns org.datacontract.schemas._2004._07.xgwj_model.UserProfileModel
     */
    @WebMethod(operationName = "GetUserProfile", action = "http://tempuri.org/IWeChatService/GetUserProfile")
    @WebResult(name = "GetUserProfileResult", targetNamespace = "http://tempuri.org/")
    @RequestWrapper(localName = "GetUserProfile", targetNamespace = "http://tempuri.org/", className = "org.tempuri.GetUserProfile")
    @ResponseWrapper(localName = "GetUserProfileResponse", targetNamespace = "http://tempuri.org/", className = "org.tempuri.GetUserProfileResponse")
    public UserProfileModel getUserProfile(
        @WebParam(name = "timestamp", targetNamespace = "http://tempuri.org/")
            String timestamp,
        @WebParam(name = "begintime", targetNamespace = "http://tempuri.org/")
            String begintime,
        @WebParam(name = "endtime", targetNamespace = "http://tempuri.org/")
            String endtime,
        @WebParam(name = "sign", targetNamespace = "http://tempuri.org/")
            String sign);

}
